


With a Heart So Wild

by stardropdream



Series: Primal-Hearted [1]
Category: Voltron: Legendary Defender
Genre: Anal Fingering, Anal Sex, Biting, Blow Jobs, Bottom Keith (Voltron), Finger Sucking, First Time, Frottage, Insecure Keith (Voltron), M/M, Multiple Orgasms, Mutual Pining, Plot What Plot/Porn Without Plot, Porn with Feelings, Praise Kink, Pre-Kerberos Mission, Purring Keith (Voltron), Semi-Public Sex, Size Kink, Sparring, Teasing, Top Shiro (Voltron), Virgin Keith (Voltron)
Language: English
Status: Completed
Published: 2020-04-30
Updated: 2020-04-30
Packaged: 2021-03-01 17:00:55
Rating: Explicit
Warnings: Creator Chose Not To Use Archive Warnings
Chapters: 1
Words: 7,170
Publisher: archiveofourown.org
Story URL: https://archiveofourown.org/works/23930467
Author URL: https://archiveofourown.org/users/stardropdream/pseuds/stardropdream
Summary: When a sparring match escalates between Shiro and Keith, they finally act on their feelings for one another. While Shiro can't explain why Keith's eyes look yellow in this light or why his teeth feel sharper against his skin, he can easily explain just what he loves about Keith. And he fully intends to show Keith just how loved he is.
Relationships: Keith/Shiro (Voltron)
Series: Primal-Hearted [1]
Series URL: https://archiveofourown.org/series/1778347
Comments: 171
Kudos: 995





	With a Heart So Wild

**Author's Note:**

  * For [animelover2day](https://archiveofourown.org/users/animelover2day/gifts).



> Gift fic for [Amber](https://twitter.com/sheithlover2day), who won my 1.5k follower giveaway on Twitter! They requested prekerb sheith getting carried away and Keith's Galra features coming out (although they don't know that's what it is). Also featuring sparring, insecurities, and Shiro taking good care of Keith. ♥ 
> 
> Regarding the "choose not to use archive warnings": The fic does not explicitly state in any way whether Keith is of age or underage. Make of that what you will and proceed forward with caution, if need be. 
> 
> (And thank you, as always, to [Meg](https://twitter.com/kedawen) for the beta read! A legend.)

Shiro pins Keith face-down against the mat to drape himself over his body— and Keith growls. Legitimately growls, Shiro thinks. He’s used to hearing such sounds from Keith when they spar, admittedly: growls, yips, snarls. When Keith’s focused and into the fight, he becomes almost feral. Shiro’s not entirely sure if Keith’s even fully aware he does it. 

Shiro _loves_ dragging those sounds from Keith. 

He’s never heard another person make any sound quite like it, something so deep and involuntary, almost animalistic. If Shiro’s honest with himself, it’s a thrill to know he can draw these sounds from Keith when they spar.

Keith wriggles, trying to get free, unwilling to yield— he’s always so unwilling to yield when they fight— and Shiro sucks in a sharp breath, _desire_ simmering in his chest. He’s used to that want, how it’s slowly been building over the course of their friendship. 

It’s near agony whenever they spar, their bodies pressing close together like this. Keith’s always left panting and sweating by the end of it in his eagerness to get better, to keep going, to pin Shiro down to the floor. He always wants to win. Shiro loves that competition in him. 

And Keith is getting better, Shiro thinks. It’s the last rational thought he manages before Keith bucks up and throws Shiro off him, rolling after him and shoving down, pinning Shiro against the mat this time.

Keith’s grin is feral and triumphant, his unruly hair clinging to his sweaty forehead and his eyes so dark, his smile sharp. Maybe too sharp. In a blink-and-you’ll-miss-it, Shiro thinks Keith’s canines look particularly pointed. Literally pointed. Shiro sees it but can’t process it.

“Keith,” he pants. He tries to rock up and throw Keith away in turn, but despite his slight size— so small, yet so strong— Keith keeps Shiro pinned. 

Keith growls his triumph, hair falling forward to frame his face. His eyes flash, bright and unearthly. 

“Yield,” Keith demands, voice tapering off into a throaty growl. And the sound _does things_ to Shiro. 

He sucks in a breath. He could fight it more, get dirty with it. He could knee Keith in the stomach, swing around and get him in a headlock. He could blow a raspberry against his cheek and make Keith squawk in surprise. He could do any number of things if he really wanted to win. 

But instead he just breathes out and sags beneath the sharp press of Keith’s hands on his shoulders. 

“Fine,” he says and then grins up at Keith, pride radiating off him in waves, “I yield.” 

Keith makes a sound then, something almost a purr, and eases the hold on Shiro’s shoulders. And yet his touch lingers, the way Keith’s touch _always_ lingers when he manages to pin Shiro. It’s what gives Shiro hope, sometimes— that Keith’s just as eager to touch as Shiro is, that, maybe, Keith’s seeking the ways to touch Shiro as well.

Keith doesn’t move to draw away. He keeps sitting on Shiro like that, which normally Shiro wouldn’t mind— having Keith in his lap like this— but the sounds Keith keeps making are doing something to Shiro along with the gentle weight of him in Shiro’s lap. He’s sure if Keith were to shift, he’d feel how Shiro’s half-hard. If he were to look, he’s sure his growing bulge would be obvious through the thin cotton of his sweats. 

“You’re improving, Keith,” he says and watches Keith shiver at the praise, ducking his head with a little smile. Shiro swallows thickly as he reaches out, his hand cupping Keith’s hip, keeping him pressed there against his belly. “One of these days I won’t be able to pin you at all.” 

“Ha,” Keith says, the laugh husky and deep. The sound pulses down into Shiro’s core, his betraying dick twitching in interest. He squeezes Keith’s hip near to bruising, but Keith hardly seems to mind, his hands flexing against Shiro’s collarbones. 

He stares at Keith’s throat as Keith swallows. Then his eyes drag up to Keith’s mouth as he licks his lips and bites down on the bottom one. Only then does Shiro remember to look up at Keith and meet his eyes rather than simply stare. 

“I doubt you’d ever let me pin you each time,” Keith finally says after that pause. He laughs again. “You’re too stubborn to just let me win.” 

It makes Shiro laugh too, even when distracted by the elegant arch of Keith above him, how good he looks sitting on him, his eyes so wild, his smile wicked but gentle at the edges— ready to be shy, ready to withdraw if he toes too close to the line. Shiro knows that, despite what others think, Keith is cautious. He watches and observes carefully. He waits to decide what he wants and if it’s worth risking everything for. 

Keith’s growl has definitely softened into a purr now and Shiro has no idea how the hell Keith even manages to do that. But it sounds good, too good. Shiro’s body feels molten beneath Keith. It’d be so easy just to buck up, to grab Keith’s hips and slide him back to feel the press of his cock through their clothes. And god, Shiro wants to. The urge to do so is there. 

“Want to go one more time?” Shiro asks, unmoving beneath Keith, mesmerized by the flex of Keith’s thighs as he brackets Shiro’s waist, the strength of his palms against his shoulders. He squeezes Keith’s hip, just to see. 

Keith shivers again, licking his lip, and nods. “Yeah. Yeah, okay.” 

They move like the ocean when they spar— a push and a pull, an ebb and a flow. Keith is so much like the tide, rising to meet him and darting away again. Deceptively powerful. Impossible to hold onto. Keith ripples around Shiro when he swings in for a headlock, ducking out of the way. He slides his leg between Shiro’s to catch at his ankles and knock him off balance. Sometimes, a sweep like that would be enough to knock Shiro backwards, but today he recovers, twisting on his heel to shoulder-check Keith and send them both tumbling to the floor.

They roll like that, grappling. Shiro tries to get Keith into a headlock again but Keith wriggles out of it, twisting Shiro’s arm out of the way and swinging his leg up to hook around Shiro’s waist, rolling them to try to pin Shiro down again. 

It’s like clockwork. It’s like poetry. Shiro’s left gasping, laughing as he tries to get a hold on Keith. And Keith growls every time Shiro manages to slip from Keith’s grasp, too. 

This round is over quickly enough— Shiro is keyed up, half-hard and hands grabbing at Keith’s belly, flipping him over hard and shoving him down against the mat. He drapes across him, his hips slotting up against Keith’s ass. He didn’t mean for it to happen, but he feels the moment the half-chub of his cock slides against Keith’s ass and Keith gives a soft, mewling cry.

Shiro freezes, terrified and aroused by the sound. There’s no mistaking the way the sound hits him, how his cock twitches against Keith’s ass. He loses his footing and slumps forward, pressing more fully against Keith, covering him completely. Keith’s so _small_ but he could throw Shiro off so easily if he wanted—

And Keith’s not moving. 

“Shiro,” he whispers instead, like it’s a question. 

“Keith,” Shiro says, unsure how to read Keith’s tone, unsure what to make of it— there’s no denying that Keith would _feel_ Shiro now. “I—” 

Whatever Shiro’s about to say gets cut off as Keith rocks his hips back. 

“Shiro—” he chokes out, pausing when he feels Shiro’s cock twitch. Then he rocks back again pointedly. 

The message is clear. 

Shiro grunts, startled but unwilling to draw away. He grabs Keith hard by his hip and rolls his hips forward to meet him. 

They start rutting like that, Keith growling and clawing at the floor, rolling his hips back to feel Shiro’s quickly hardening cock. Shiro groans, shuddering at the feeling of Keith’s movements, at the sinuous line of his back pressing against Shiro’s chest, the way they move together like sparring. It’s so much like sparring— quick breaths and reflexes, reacting to the way Keith’s body moves beneath him. 

Keith lifts one shaking hand back and grips the waistband of his leggings, yanking them down to expose his ass to Shiro. 

Shiro doesn’t stop to question it before he’s tugging down his sweatpants enough to pull his cock free, letting it slide into the cleft of Keith’s ass. He presses close like that and rolls his hips in slow little bursts, rutting against Keith. 

Keith starts whimpering. His hands look like claws as he paws at the mat and that really shouldn’t be possible. Again, it’s something Shiro sees but can’t process. The growls and mewls are back, louder and animalistic as he pants, thrusting back against Shiro’s cock. Shiro keeps moving, sliding his cock against the cleft of Keith’s ass, pretending it’s his hole, pretending he can just slip in and fuck into Keith like that, and god how much he wants to. He’s nearly mindless with it, the two of them fucking like this right in the middle of the empty gym, where anyone could walk in and see them like this. 

“Shiro,” Keith keens, back arching. “Please—” 

Shiro’s hand moves blindly, dragging up Keith’s belly beneath his shirt and then down, finding his cock and curling his hand around him. His dick’s cute, barely a handful in Shiro’s big palm, and the first pull of his fingers around him makes Keith cry out, shuddering. 

He strokes Keith’s cock in time to their thrusts, rocking together there on the mat. He feels the moment Keith starts reaching his edge, too fast and too quick and Shiro wants to make it last, but he wants to feel Keith coming beneath him. He fucks his hand over Keith’s little cock rapidly, squeezing at the base and twisting at the tip. 

Keith cries out Shiro’s name as he comes, shuddering beneath him and coming over Shiro’s fingers. Keith garbles out a low cry, back arching, the mewl hitching into a yowl as he fucks hard and fast into Shiro’s hand, slicked with his come. The feeling of it is too much: Shiro comes with a groan, pushed over by the gentle shudder of Keith’s writhing body. 

It’s only once they’re both heaving for air that Shiro realizes just how much the situation’s gotten away from him. He tenses up. 

“Keith,” Shiro says. “Sorry—” 

And just like that, the words make Keith go tense beneath him. His hands are trembling, prickly as he pushes Shiro’s hand away from his cock and yanks his leggings back up. Shiro backs off, staring at the mess he’s made over Keith’s ass and lower back just before Keith covers it up again with his clothes. 

Keith settles on his knees. He’s blushing— Shiro can see it from their position, darkening his ears. His blush is so deep it nearly looks plum. 

“Don’t apologize,” Keith says, and it sounds like begging. “Sorry,” he says then, voice small, “I know I’m not— very good. I—” 

“What?” Shiro asks, interrupting. He reaches for Keith, hesitating just before he touches his shoulder, unsure if Keith’s going to shrug him off, if he’s going to scramble away and never look at Shiro again. 

Instead, Keith leans back into the touch and lets out the softest whimper. It sounds needy, low and threadbare. It makes Shiro shuffle closer, keeping his hand anchored to Keith’s shoulder. 

Keith tentatively turns his face to look at Shiro, and his eyes are too sharp in the light of the gym, nearly yellow. He looks terrified, although Shiro thinks it’s not of him. Keith lets loose another soft whimper when Shiro squeezes his hand. 

“I got carried away,” Shiro says. Keith’s expression shutters and Shiro adds quickly, “I should have— we should have done that somewhere else.” 

He’s completely messed it up. Keith deserved gentleness, deserved to be treated like he’s precious, like he’s amazing. Because he is. Because Keith deserves to know how loved he is. 

“It shouldn’t have been so quick,” Shiro says apologetically. “I, um—” 

Keith’s mouth opens in surprise. And then he jerks forward, kissing Shiro hard. Shiro knows Keith can’t have much experience in general, but the kiss proves as much— Keith’s too off-center, too sloppy, too eager. 

It’s perfect. Shiro sucks in a sharp breath, cups Keith’s cheek, and kisses him back. 

And then Keith bites Shiro’s bottom lip and it stings. Harder than it should. Shiro jerks back with a small hiss of pain, tongue dragging across his lip to test for blood.

“Sorry!” Keith says and then covers his face with his hands, ducking away from Shiro’s gaze. His eyes seem even more wild than before, his teeth too sharp and glinting. Shiro can’t make sense of what’s happening with Keith, why he’s looking this way. 

His reaction is what worries Shiro most, though. 

“Keith—” Shiro says, hands cupping Keith’s elbows, trying to coax Keith’s hands from his face but unwilling to force him. Keith’s ears are purple. “It’s okay. You just surprised me.” 

“I’m sorry,” Keith says again. “I— I get like this sometimes. Everything feels too loud and too bright. I get too sharp. I just— and I just…” He trails off into a low whimper, a keen that hits Shiro in his gut despite his concern. He wants to make Keith make all these noises. “I don’t know,” Keith says. “It just feels like all my senses crash together.”

“Like— synesthesia?” 

“I didn’t mean to bite you,” Keith mumbles. It’s not really an answer. 

Shiro licks his lip again. It’s kiss-swollen but otherwise fine. He leans in closer and kisses one of Keith’s knuckles, since he can’t get at his face. 

Keith slats his fingers just enough to peek at Shiro, eyes bright and seeming to glow in the shadow his fingers cast. Shiro smiles at him but Keith just shuffles his fingers closed again. 

“Keith,” Shiro says. “It’s okay. We— hm, okay. This got out of hand.” 

Keith grumbles his protest, shaking his head. His ears are still that cute plummy-purple. Then he mumbles something that Shiro can’t quite catch.

“What’s that?” Shiro asks, waiting. 

Keith’s silent, sitting there with his face pressed into his hands. His shoulders hitch up a bit and Shiro wonders, again, if maybe he’s pushed too far, if he’s done something wrong. Keith isn’t screaming at him, isn’t running away from him. He _knows_ about Keith’s crush on him. But that’s different from acting on it and acting on it like this. 

They’ve been playing at this line for so long. Shiro knew about Keith’s crush but never knew if Keith ever planned to do anything about it. Shiro never planned to, if only for Keith’s comfort. If he ruined things, he’d never forgive himself. 

“We’re friends,” Shiro says gently. “No matter what, we’re friends, Keith. I’m sorry if I pushed too far.” Keith doesn’t say anything and Shiro swallows. “I got carried away.”

“Me too,” Keith says in a low grumble. “I think about this all the damn time when we spar.” 

Shiro laughs, the sound startling out of him. “Me too.” 

“I just…” Keith shakes his head and finally lowers his hands from his face. He doesn’t meet Shiro’s eyes, but when he bites his own lip, his teeth look too sharp. His eyes look too strange, still that almost-yellow in the light. Shiro can’t make sense of it. Maybe it really is synesthesia. 

But he’s never heard of synesthesia having physical effects like this. 

“Just?” Shiro prompts. 

“Why would you want someone like me?” Keith asks in a rush, jerking his chin up to look at Shiro, his eyes wide. “I’m. You’re _you_ and I’m just… me.” 

Silence follows the statement, but it feels like a stab into Shiro’s gut. He feels his heart crack in his chest. 

“Keith…” 

He knows it’s been a hard year for Keith at the Garrison— the bullying, the scathing remarks from instructors disguised as advice, any other side-eyeing person who thinks Keith’s no good, that he’s just one step away from failure. He loves how fierce Keith can be, how he’s always ready to fight back, but he also knows it’s inevitable and impossible for Keith not to internalize some of it.

Shiro knows about Keith’s crush on him, yes, and he also knows that Keith doesn’t believe that Shiro can care about him back. 

He cups Keith’s face. He leans in close but pauses just before connecting, waiting for Keith’s permission. Keith’s eyelashes flutter in surprise, almost a flinch, his expression open in its longing. Then, slowly, he closes his eyes and tips forward to bridge the space.

Shiro kisses Keith gently, slow and careful, taking his time. Keith lets Shiro set the pace, follows his lead— the gentle swipe of Shiro’s tongue, the pillowing of his lips against Keith’s. Keith lets loose another low whimper that tapers into a purr. 

“Keith,” Shiro whispers once he parts, mouth brushing against Keith’s as he speaks. “Of course I want you. You’re _you_ and I like you.” 

Keith makes a soft sound as the words hit him. He blushes deeper, but Shiro catches the whisper of his smile as he ducks his head again, shuffling close and clinging to Shiro. 

Shiro’s quick to return the hug, holding him close and rubbing his hands down his back. He presses his face into Keith’s hair, breathing him in. In this, at least, he can offer comfort. 

Keith shifts closer, his hips pressing down against Shiro’s thigh. 

Shiro sucks in a breath. “Are you still hard?” 

“Yeah, of course,” Keith says and Shiro can hear Keith’s frown in his voice. “That’s normal.” 

Keith is a teenager, after all. Shiro supposes it must be normal. 

“Shiro,” Keith says, voice cautious and unsure. “This— can we… um.” 

Shiro waits for Keith to ask the question, but it doesn’t come. Keith clings harder, afraid to actually ask for what he wants, to actually put voice to his desires. But Keith doesn’t offer the words, tension rising in his shoulders again. 

“I don’t know if you… if you want—” Keith says, pausing again. He grunts his frustration, pulling from the hug to rub at his face, his mouth twisted into a sad frown. “I don’t know if you’d want to do that again, since I’m—” 

“You’re you,” Shiro interrupts gently. “And I like you. Remember?” 

Keith looks at him then, his expression fragile. Hopeful. 

“Can we— can we do that again?” Keith finally asks. 

Shiro nods. “Not here, though.” 

Keith sucks in a breath, like he didn’t expect Shiro to say yes. He sits up on his knees, a little trill hiccupping from his chest. It’s adorable. _He’s_ adorable. Shiro lurches forward, cupping Keith’s chin and kissing him again, swiping his thumb along his jaw until Keith melts with another quiet purr. 

“Come on,” Shiro says once they break the kiss. “We can— we should go to my room.” He pauses then, flustered. “Only if you want. I mean, we can— it’s been a long day and if you want to take it slow—” 

“No,” Keith protests, fumbling, gripping tight at the front of Shiro’s shirt. As if afraid that if he lets go, he’ll lose Shiro entirely. And maybe he does fear that. He knows Keith can get insecure— maybe he thinks this is his last chance, his only chance. “Shiro,” he says. “I want you to— ah. I want you to fuck me.” 

Shiro shudders at the words, at the fire that heats in Keith’s eyes— now faded back to the familiar shade he knows so well. He still looks a little breathless, his hard-on obvious through the clingy leggings. Shiro wants to throw him on the mat and fuck him right here, public space be damned. 

But Keith deserves gentleness. He deserves to be treated sweetly, kindly, to know just how much Shiro adores him. 

He kisses Keith again and pulls him back to his room.

-

It takes longer than Shiro would have liked to sneak Keith into his room, careful when they round corners in case anyone’s roaming the halls. Shiro knows he should be a gentleman and let Keith clean himself off and get settled, but the second the door closes behind them and they’re safe in Shiro’s quarters, Shiro just pulls Keith in.

Keith trips to him, hands coming up to touch Shiro’s chest, his eyes bright and thrilled. He looks so small in Shiro’s arms and it feels like sparring when he throws Keith onto the bed and crawls after him, knows it’d be laughably easy for Keith to hook around him and toss him down onto his back, too.

But Keith trusts him with this, sucking in a deep breath and back arching, open and vulnerable to Shiro as Shiro pushes up Keith’s workout tee and tugs down his leggings, stripping him.

“We can do whatever you want,” Shiro says gently. “Whatever you want. Even nothing at all.” 

He rests his palm on Keith’s belly and feels the swell of Keith’s breath. Keith nods in a jerky little movement, his expression turning vulnerable again. Still so unsure. Shiro wishes he knew what to do and say to show Keith how beautiful he is, how perfect he is, just how damn lucky Shiro feels to have him in his life. 

He can only guess what’s running through Keith’s head— that it’s a trick, that it’s a mistake. That he’ll say the wrong thing and Shiro will recoil. He doesn’t _realize_ just how damn good he is. 

“I want to suck your dick,” Keith says and his little dick twitches at the words, hard and leaking precome. In the low light of Shiro’s bedroom, Keith’s cock looks that same plummy color as his blushing ears. 

“Have you ever before?”

Keith grunts at him. There’s a spark in his eyes despite the insecurity— competitive, then. Shiro’s always loved that about Keith. 

“And that’s all you want to do?” 

“I want—” Keith blushes. “Like before. Only for real. I want— you’ll fuck me, right? I…” Keith squirms. “That’s what I want.” 

“Okay,” Shiro says. He leans away from Keith, stepping off the bed to find his bottle of lube. He feels like he’s going to shake out of his skin, eagerness and desire swirling deep in his chest. Maybe a small part of him doesn’t think this is real, either— that he’ll blink and wake up from this fever dream. 

Keith sits up on the bed, naked and flushed, his fingers wrapping around his handful of dick and squeezing as he watches Shiro move, like just the act of him walking around his room is arousing. 

Shiro finds the lube and tosses it to Keith, then tugs his shirt over his head. His medical bracelets chirp a warning at the sudden movement, but he ignores them as he always does.

He waits until he’s back at the bed before he curls his fingers around the waistband of his sweats. He hesitates only for a moment, taking a breath, and slipping them off before joining Keith naked on the bed. 

Keith’s eyes widen as he looks at Shiro’s half-hard cock. “I— I felt how big you were, but—” 

“We’ll take it slow,” Shiro assures him and Keith looks like he wants to protest. Shiro kisses him before he can voice it. “You’re doing great so far, Keith.”

“I haven’t even done anything,” Keith grumbles against his mouth. “Just acted like an idiot.” 

“You’re perfect. And I’m going to make you feel good,” Shiro says, promising. “And if it doesn’t feel good, tell me.” 

“Yeah, yeah.” 

Shiro kisses him again, unable to hold back his smile. Keith purrs quietly, pressing closer and reaching for him. His hand curls around Shiro’s cock and he feels Keith’s breath hitch as he explores the length of him, thumb circling along the crown and fingers ghosting down. 

“Fuck,” Keith whimpers. “You’re huge.” 

Shiro laughs and kisses the corner of Keith’s mouth, ducking his head to watch the way Keith’s fingers glide over his cock, the way it plumps up against Keith’s palm. His hand is so slim, so delicate, and looks so small around his cock. 

Keith squirms down then, seemingly determined to suck Shiro’s cock. Shiro widens his stance for him, making room for Keith between his thighs as Keith scoots closer. Up close, the size must be intimidating because Keith spends a few moments just staring at it, his breathing getting faster. 

Shiro thinks of earlier, how Keith’s teeth felt dragging across his lip. He groans. “Just— take it slow. Be careful.” 

Keith looks up at him, eyes blazing with determination. He gives an experimental lick to the top of Shiro’s cock. He makes a soft trill, tasting Shiro for the first time and finding he likes it, Shiro thinks. He closes his mouth around the cockhead and suckles. 

“Fuck,” Shiro breathes, his fingers threading into Keith’s hair to hold him steady. He doesn’t direct or shove Keith, just lets Keith explore. And Keith does, licking and mouthing at the cockhead, both his hands curled around his cock and sliding down it, experimenting with the hold, with the touch. 

And Keith looks good like that between Shiro’s legs, Keith’s pretty mouth stretched around him. He’s barely gotten a mouthful, just suckling and lapping at the slit with kitten licks, cupping his hands around Shiro’s cock like it’s a treat. 

“How often have you thought of this?” Shiro asks, voice husky and deep, graveled out with desire. 

Keith hums, popping the cock from his mouth so he can lick down the length of it, tasting the full length of him. “A lot. So much. All the time.” He looks up at Shiro. “How do you like it?” 

Shiro tugs gently on Keith’s hair, guiding him back up towards the tip. Keith takes the hint, mouthing around the cockhead and suctioning his mouth around it, swirling his tongue tentatively. 

Keith bobs his head down, carefully still, trying to get more inside him. He can’t go far, backing off with a soft choking sound when he goes too fast, too quickly. Shiro coos at him and Keith glances up, his eyes bright, the desire to please so strong. He suckles on Shiro’s cock, bobbing his head in short little thrusts, barely able to get past the cockhead. He’s adorable. Shiro loves him so much. 

And then that sound Shiro loves so much rattles to life in Keith’s chest— the purr vibrates up his throat and Shiro _feels_ it. He gasps aloud at the sensation of it, of Keith swallowing around him and the purr vibrating through his dick. 

He grips Keith’s hair tight and rocks forward before he can stop himself. He yanks on Keith’s hair, eager to drag in closer. 

Keith chokes. The purring stutters and Keith whines low as he tries to do what Shiro wants and swallow around his cock. But Shiro backs him off immediately, moaning. 

“Fuck, sorry—” 

Keith growls and presses down closer again, wriggling forward, swallowing around Shiro’s cock as much as he can manage, then resumes his purring. He keens low when it makes Shiro involuntarily rock forward again, fucking into Keith’s mouth. He chokes again but adjusts and it’s then that Shiro realizes that Keith _likes it._ It makes Shiro moan, rocking forward and fucking Keith’s mouth. 

“Fuck! Fuck, Keith—” 

He loses sense of himself after that, rocking into Keith’s mouth. The moment feels so much like fucking against his ass in the gym— desperate and needy, just wanting to feel Keith all around him. Keith just keeps purring, shivering with delight. 

It’s with great effort that Shiro rips himself away from Keith, shuddering and clenching a hand around the base of his cock to keep from coming across Keith’s face. He’s panting with the effort, shuddering in pleasure. 

Keith is a sight before him, pupils blown wide, his mouth slick with precome and spit, swollen from cock sucking and stretched out on the bed, already pawing at Shiro and keening low in his throat.

“Shiro,” he mewls. “I want—” 

“I want to come inside you,” Shiro says. “I— that’s what you wanted, too, right?” 

Keith whimpers and drops his head, smushing his face into Shiro’s blankets and groaning. “But can’t you go six times like me?” 

“ _Six?_ ” Shiro squeaks.

“Usually,” Keith says, looking up at Shiro. His eyes look yellow again. They look like they’re glowing. “When I get off, I can usually do it six times if I’m not distracted.”

“Holy shit, Keith,” Shiro groans. He shakes his head. “I’m lucky if I can get twice in a day.” 

Keith pouts up at him, propping himself up on his elbows. It gives him a nice back arch and Shiro’s eyes drag over him, appreciating the sweet swell of his ass. 

“Shiro,” Keith says, whining. “I want to get you off.” 

“You can either suck me off or let me fuck you. Which do you want?” 

Keith sucks in a sharp breath, face flushing. He squirms on the bed, rutting his hips forward on the mattress, undoubtedly seeking the friction of his cock against the sheets. _Six times._ Keith’s a menace. He can’t help but think of all the ways he’ll be able to get Keith off tonight, how good he’ll make him feel. 

“I want you to fuck me,” Keith says, deciding, and Shiro knows he’d deny that he’s pouting. But he is definitely pouting. 

“Then I’ll fuck you,” Shiro says, promising. He pets his fingers through Keith’s hair, soothingly, smiling when it kicks that purr up again. Shiro smiles helplessly. “How do you do that, anyway?” 

“Do what? Fuck?” 

“The purring.” Shiro tugs gently on Keith’s hair, guiding him to sit up so he can push Keith back onto the bed, splaying him out on his back and shouldering his thighs open to make space for him there. 

“I don’t know,” Keith says. “I’ve just always been able to do it.” He grins. “Do you like it?” 

“I like everything about you,” Shiro says and it makes Keith blush, hands flying up to cover his face again. This time, at least, Keith laughs rather than looks like he might cry. Shiro would do any number of things if it meant banishing any of the insecurities swirling inside Keith. 

“Shiro, geez.”

“You believe me, don’t you?” Shiro asks, pressing a kiss against Keith’s thigh. 

Keith doesn’t answer, hiding his face still and trembling a bit. Shiro plants another kiss on his thigh, fishing through the blankets to find the lube bottle. 

“You’re so good, Keith,” Shiro murmurs. “You’re so beautiful and so pretty and you look so good—”

“Shiro,” Keith whispers, voice trailing into a whine. He sounds like he wants to protest more but, at the same time, can’t stand to stop hearing it. 

Shiro presses a kiss to Keith’s stomach. “So smart, so strong, so damn funny.” Keith grumbles a protest but Shiro presses an insistent kiss to Keith’s hip. “The best damn pilot I know, quick-thinking and clever.” 

Keith whimpers. He starts to squirm. 

It’s worshipful to finger Keith open like this. He’s so responsive, shuddering and whining just from one of Shiro’s fingers. Shiro takes his time, working him open, teasing at him, stroking his fingertips inside him to milk against his prostate, to tease at his rim, to twist and tug inside him. 

“I look forward to seeing you every day,” Shiro says. “My day’s better whenever you’re in it.” 

Keith sucks in a sharp breath. He seems incapable of speech, mouth flopped open, hands dropping from his face to grip at Shiro’s wrist and ride against his fingers. 

“Don’t make me cry,” Keith gasps. He clenches his eyes shut, shuddering as he clenches around Shiro’s fingers. 

Shiro presses another kiss to his thigh. 

He makes Keith come like that, a sharp cry and jerk of his hips as he fucks down on Shiro’s fingers. And that much is perfect, so perfect. He’s beautiful, flushed and crying out in Shiro’s bed, sweaty and panting. It’s so much like sparring like this, except Keith’s yielding to him, desperate for him. 

Shiro half-expected that coming would help Keith relax and stay pliant. Instead, it seems to make him needier. He starts thrashing when Shiro works another finger inside him, whimpering. 

“ _Shiro_ ,” he mewls. “Fuck me.” 

Shiro tuts at him, smiling, his heart swelling in his chest with affection, watching Keith pant. He ducks down, licking and kissing over his chest, sucking on a nipple just to see what Keith will do. Keith squirms and moans, shuddering and clenching around Shiro’s fingers. 

“Be good, baby,” Shiro says and that makes Keith gasp, pawing at Shiro’s shoulders. His nails feel pinprick sharp, scraping over his skin. 

Shiro lifts his free hand, feeding two fingers into Keith’s mouth to give him something to suck on. It works at least for a moment, Keith’s tongue swirling around his fingers like he did his cock, purring and whimpering and needy with it. He wonders just how far he can take Keith like this, just how long it’ll take before Keith starts really begging, desperate and whiny. 

He spends more time working Keith open than he thinks he has to, delighted in watching Keith’s little cock plumping up again, the way he rocks his hips to ride Shiro’s fingers. He suckles on Shiro’s fingers in his mouth, his eyes blazing and his whines desperate. When he drags his teeth across Shiro’s fingers, they feel so sharp again. 

Shiro’s barely holding himself back from coming. Keith’s responsiveness and sounds are enough to fuel him onward and Shiro’s sure it’ll be the source of many of his wet dreams and fantasies for some time to come. 

He waits until he’s completely satisfied with how relaxed Keith is before he draws his fingers out from Keith’s mouth and then out from his hole. Keith cries out when he’s left empty, legs parting and hands reaching for Shiro again. 

“Fuck me,” he says, whining and commanding at once. 

“Mmhm,” Shiro hums, grinning. “You got it.” 

Keith trills then, triumphant. He wraps his legs around Shiro’s hips. 

“Like this,” Shiro says gently, cupping Keith’s hips to change his angle, plucking up a pillow to shove it beneath him and keep him aloft. He presses a kiss to Keith’s throat. “Ready, baby?” 

“I’ve been ready,” Keith says, grumbling.

It makes Shiro laugh. He rolls his hips forward, letting his cock drag across Keith’s just to make Keith suck in a sharp breath. Then Shiro reaches down to curl around himself and guide the head of his cock to Keith’s hole. 

He smears his cock there, precome and slick lube making a mess of Keith’s hole. He’s teasing again and he can’t quite manage to feel bad about it, smiling to himself as Keith lets out a grumbly mewl, trying to get Shiro to slip inside him. 

Shiro lets his cockhead notch against Keith’s hole, tugging at the rim, puffy and sweet and ready to take Shiro in. 

“ _Shiro!_ ” Keith cries out, frustration and desire at once.

“Shh,” Shiro soothes and then slips his cockhead inside, letting it push past the rim. 

Keith bites his lip hard, the air hissing out of him. Shiro is big and he knows it, and he’s determined to take his time, to let Keith adjust to it. Keith squirms as little. 

“Relax,” Shiro says. “Breathe.” 

Keith’s breath slips out of him in a low yowl. 

“Okay?” Shiro asks.

Keith nods, still biting his lip. He looks up at Shiro, eyes bright. He swallows. “I—”

“Yes?”

“I can’t believe you actually want me.” 

The urge to tease leaves Shiro instantly at the sound of those words. He thinks he goes breathless, his heart pounding. 

“Keith,” he whispers. He runs his hand over Keith’s side, petting him. “Oh, Keith. _Keith._ ” 

Keith looks away, trying to laugh but not quite managing it. He throws his arms up, hooking them around the back of Shiro’s neck. 

“No one wants me.”

“I do,” Shiro says. He rocks his hips forward, slipping into Keith. “I do, Keith. So much. All the time.” 

Keith whimpers and rolls his hips, adjusting to the girth of Shiro’s cock. 

“Really?” Keith asks and sounds disbelieving. 

“I’m sorry,” Shiro says and kisses Keith, slow and gentle. “If you really have to ask, that means I have to do a better job of telling you.” 

“No, you’re—” 

Shiro kisses him again, swallowing Keith’s words. He keeps the kiss gentle, breaking it with a slight breath and brushing his nose against Keith’s. “You’re so important to me, Keith.” 

Keith hiccups, his breath shaky, although he doesn’t cry. He holds tighter to Shiro and buries his face against his shoulder. “Fuck me?” he asks. “Please, just— fuck me.” 

It takes a moment, the two of them shifting and pressing closer and closer. Shiro only manages to feed about half his cock into Keith before Keith starts getting impatient, rolling his hips down. Shiro keeps his thrusts shallow and slight, just the littlest shifts of movement as Keith adjusts to him. 

“Keith,” he sighs as he moves. He just keeps saying his name, again and again, and he knows Keith likes it, can see the way it makes his eyes shine, the way he moves to meet Shiro, how desperately he wants to be good for him. 

“Shiro—”

“You’re doing great, baby,” Shiro says. “Look at how well you take me.” 

Keith nods his head, biting his lip. There’s no denying how unearthly Keith looks in this moment— the strangeness of his eyes, the purple flush, the sharp bite of his fangs. And they are fangs. This close, face-to-face, Shiro can’t deny what he’s seeing although he can’t understand why he’s seeing it. 

But then again, it doesn’t change anything for Shiro. Keith is remarkable. That’s always been the case. He has no way to discern or figure out _why_ this is happening for Keith, only that it seems to be normal for him. And, well, Keith’s beautiful. He’s always been, no matter what. 

They move together like that, Shiro fucking into Keith in short bursts that slowly deepen, that slowly drag out. By the time he’s managed to bury himself fully inside Keith, it’s with full, languid strokes. Keith can only whimper by the end of it, clinging to Shiro and moving to meet him.

He's a panting, purring mess, clenching around Shiro, clinging to Shiro, sobbing out Shiro’s name. He comes for the third time and Shiro’s determined to get another out of him, following the frantic burst of thrusting his orgasm draws from Keith. 

“You’re perfect, you’re perfect,” Shiro pants as he fucks into Keith. “Everything about you, Keith—”

Keith shakes his head, banishing the words like they’re platitudes. He growls low, arching, fucking against Shiro’s cock in turn, desperately chasing another orgasm. 

Shiro just presses down closer to Keith so that they’re moving together, so that Keith’s cock slides against Shiro’s belly as they move. 

He’s barely holding it together to keep from coming himself. It’s a miracle he hasn’t tipped over the edge the instant he slipped inside Keith. He lets himself chase that edge now, letting the pleasure build in his belly, angling his hips to find the right angle for Keith. 

Keith’s eyes widen as he realizes what’s happening, as he feels Shiro’s growing desperation. 

“Come— come inside me,” Keith pants, begging, dragging his claws— and they _are_ claws, Shiro realizes— down Shiro’s back. “Please—” 

And Shiro’s never been able to resist any request from Keith. He moans as he fucks into Keith and tenses up as his orgasm crests over him. He spills inside Keith, filling him with warmth. It makes Keith hitch a low cry. 

Shiro tilts his head back, exposing his neck as he groans. And Keith nuzzles in closer, licking at Shiro’s neck. The trills are back, light and airy as Keith nuzzles, his lips dragging across his skin. But then those trills twist into a low growl. Keith presses closer, growling and nuzzling with a purpose— and then his teeth drag over his skin. Shiro feels the prick of them just as Keith bites down hard on Shiro’s neck with a low, possessive growl. 

He feels his skin break and he gives a sharp cry, more from surprise than pain, his thrusts stuttering to a shocked halt. “Keith—” 

Keith gives a confused garble around the mouthful of Shiro’s neck. His teeth sink deeper and Shiro can’t resist the slight flinch that draws from him. Keith hisses and then jerks back with his eyes wide. 

“Sorry! I don’t—!” 

Shiro kisses him hard before Keith can ramble an apology. He licks into Keith’s mouth and sucks on his bottom lip, letting his own teeth drag. He makes it filthy. He lets Keith feel just how good Shiro feels. 

“Fuck,” he breathes once he draws back. He blinks down at Keith.

Keith frowns, his fingers ghosting over Shiro’s neck, touching the spot he just bit down. Shiro thinks there’s a small drop of blood, but it’s already clotting. It’ll just look like a very bad hickey in the morning, he thinks.

Shiro seizes Keith’s hand and kisses each fingertip. “Fuck,” he says again. “You’re perfect.”

“Really?” Keith asks, his voice fucked out but soft all the same. He glances at Shiro’s neck, then the glance of his mouth over his fingers, then up to Shiro’s eyes. Then they flicker away again, his blush blooming. It’s cute that only now he’d get shy. 

He’s still hard. Shiro supposes he still has two more orgasms to get out of Keith tonight. He can’t wait. He wants to swallow Keith’s cock in one lick. He wants to make Keith come untouched if he can. 

“Really,” Shiro says, smiling. 

Keith smiles back. “Oh.” 

Keith looks a mess on the bed, hair a dark halo around him, his eyes that strange catlike slit, face flushed plum and mouth kiss-swollen and full of fangs. But he’s beautiful. He’s the most beautiful thing Shiro’s ever seen. 

“Keith… you’re so important to me.”

Keith makes a soft sound again, one of Shiro’s favorite sounds— the low trill. Delighted. Happy. It shines in his eyes.

“Y- you too, Shiro,” Keith whispers. He still looks surprised, still, by Shiro’s words— like he can’t quite believe it. 

Shiro reminds himself to say it— again and again— until Keith believes it. Until Keith knows it beyond a shadow of a doubt. 

Shiro kisses him again and swallows every sound Keith makes. His hand slips down Keith’s body, curling around his cock. He can’t wait to find out all the other sounds Keith can make tonight.

**Author's Note:**

> This story is part of the [LLF Comment Project](https://longlivefeedback.tumblr.com/llfcommentproject) (including the [LLF Comment Builder](https://longlivefeedback.tumblr.com/commentbuilder)), which was created to improve communication between readers and authors. This author invites and appreciates responses, including:
> 
>   * Short comments
>   * Long comments
>   * Questions
>   * “<3” as extra kudos
>   * Reader-reader interaction
> 

> 
> This author replies to comments.
> 
> Check out Maria's [SUPER HOT (nsfw) fanart](https://twitter.com/lazuritecrown/status/1274128936448950272) from the first scene of this fic. 
> 
> [Twitter](https://twitter.com/stardropdream)


End file.
